//package com.tjetc;
//
//public class _3Encapsulation {
//    public static void main(String[] args) {
//        // 封装：把一些东西放在一个盒子里进行打包 封装决定了你代码好坏
//        // 封装这件事说简单也简单（行为简单），说难也非常难（设计----经验！！） ----- > 类与类之间的关系 （继承 多态 接口实现）
//        /*
//            封装(encapsulation)就是把抽象出的数据[属性]和对数据的操作[⽅法]封装在⼀起，数据被保
//        护在内部，程序的其它部分只有通过被授权的操作[⽅法],才能对数据进⾏操作。
//
//        （1）把相关的事物放在一起
//        （2）用来起到保护作用
//
//
//            1.大家理解的封装 就是一个方法 我们把相同的逻辑放在了一起 形成了一个方法 相对来说简单一点点
//            2.类是不是封装？ 是！ 将一件事物 共有的属性和行为放在了一起 ，形成了一个类 最难！！！
//            3. 数据被隐藏起来 起到保护作用  我们类中有五大成员 属性 行为（版权 一个事物制造流程）
//
//
//           实现封装的三个步骤：
//           1.将属性进⾏私有化private
//           2.提供一个setter方法 用来可以修改 （不必须） 我们一般情况下 都会提供这两个方法
//           3.提供一个getter方法 用来可以获取  (不必须)
//         */
//
//        Person person = new Person();
////        person.name 传统方法进行访问 已经不能再使用了
//        System.out.println(person.getName());
//        String name = person.getName();
//        // 这么做改的是对象
//        name = "zhangsan";
//        person.setName(name);
//
//
//    }
//}
//
//class Person {
//    private String name;
//    private int age;
//
//    // 我们一般情况下 都不在类中进行修改
//    // 为什么？在类中修改意味着 所有对象都会修改
//    public String getName() {
//        // 能不能对名字进行处理？
//        name = "zhangsan";
//        return this.name;
//    }
//
//    public void setName(String name) {
//        this.name = name;
//    }
//
//    // 生成getter和setter快捷键 alt+ insert
//
//    public int getAge() {
//        return age;
//    }
//
//    public void setAge(int age) {
//        // 可以做校验！
//        if (age <= 0 && age >= 150) {
//            return;
//        }
//        this.age = age;
//    }
//}
